NAC: A lightweight intermediate representation for ASIP compilers
نویسندگان
چکیده
ASIP processors are tuned for optimized mapping of narrow application sets in heterogeneous platforms. Their successful development relies on compiler-based design space exploration. The careful design of the compiler intermediate language is a necessity, due to its dual purpose as both the program representation and an abstract target machine. Its design affects the complexity, efficiency and ease of maintenance of all compilation phases. In this work, an extensible typed assembly intermediate language, NAC, is presented. It can be used for processor exploration, optimizing intermediate representation (IR) transformations and SSA compilation. Minimal SSA construction algorithms are thoroughly presented for the first time. 1
منابع مشابه
A Retargetable Compiler of VLIW ASIP for Media Signal Processing
In the last decade extensive researches have been carried out in ASIP (Application Specific Instruction Processor) design field. One of the key steps in ASIP design is code generation by a retargetable compiler. In this paper we describe our experience in implementing a retargetable compiler for VLIW ASIP based on ORC (Open Research Compiler) framework. Orienting towards a new register file acc...
متن کاملRetargetable C Compiler for Network Processors
Application-specific instruction-set processors (ASIP) are widely used in network processors. With a high demand from the market for faster new product development, retargetable compilers, and the associated knowledge, become essential for development. Based on the LCC retagetable C compiler, we added an ASIP target derived from the DLX instruction set, which was successfully used in a network ...
متن کاملLightweight Lexical Closures for Legitimate Execution Stack Access
We propose a new language concept called “L-closures” for a running program to legitimately inspect/modify the contents of its execution stack. L-closures are lightweight lexical closures created by evaluating nested function definitions. A lexical closure can access the lexicallyscoped variables in the creation-time environment and indirect calls to it provide legitimate stack access. By using...
متن کاملA Multi-Layer Intermediate Representation for ASIP Design
The design of an application-specific instruction-set processor (ASIP) involves a number of basic steps, as shown in figure 1. The designer first specifies a set of applications that are characteristic for the target domain. This is done in a high-level language such as C. A compiler front-end then translates this application into an intermediate representation, which usually corresponds to som...
متن کاملAn Intermediate Representation for Integrating Reverse Engineering Analyses
Intermediate representations (IR) are a key issue both for compilers as well as for reverse engineering tools to enable ejicient analyses. Research in the$eld of compilers has proposed many sophisticated IRS that can be used in the domain of reverse engineering, especially in the case of deep analyses, but reverse engineering has also its own requirements for intermediate representations not co...
متن کامل